package com.example.hanfu.tiku;

import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;

import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;

import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.GridView;
import android.widget.ListAdapter;

import com.example.hanfu.login.LoginActivity;
import com.example.hanfu.login.LoginState;
import com.example.hanfu.R;

import java.util.ArrayList;
import java.util.List;

/**
 * A simple {@link Fragment} subclass.
 * Use the {@link DaTiFragment#newInstance} factory method to
 * create an instance of this fragment.
 */
public class DaTiFragment extends Fragment {
    private static final String TAG = "DaTiFragment";
    Button dati;
    LoginState loginState=new LoginState();


    // TODO: Rename parameter arguments, choose names that match
    // the fragment initialization parameters, e.g. ARG_ITEM_NUMBER
    private static final String ARG_PARAM1 = "param1";
    private static final String ARG_PARAM2 = "param2";

    // TODO: Rename and change types of parameters
    private String mParam1;
    private String mParam2;

    public DaTiFragment() {
        // Required empty public constructor
    }

    /**
     * Use this factory method to create a new instance of
     * this fragment using the provided parameters.
     *
     * @param param1 Parameter 1.
     * @param param2 Parameter 2.
     * @return A new instance of fragment ZiXunFragment.
     */
    // TODO: Rename and change types and number of parameters
    public static DaTiFragment newInstance(String param1, String param2) {
        DaTiFragment fragment = new DaTiFragment();
        Bundle args = new Bundle();
        args.putString(ARG_PARAM1, param1);
        args.putString(ARG_PARAM2, param2);
        fragment.setArguments(args);
        return fragment;
    }

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        if (getArguments() != null) {
            mParam1 = getArguments().getString(ARG_PARAM1);
            mParam2 = getArguments().getString(ARG_PARAM2);
        }
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        // Inflate the layout for this fragment
        return inflater.inflate(R.layout.fragment_dati, container, false);
    }

    @Override
    public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
        super.onViewCreated(view, savedInstanceState);
        dati=view.findViewById(R.id.start);
        GridView gridview=view.findViewById(R.id.types);

        List<String> list1=new ArrayList<String>();
        for(int i=1;i<=5;i++){
            list1.add("选择题题库 "+i);
        }
        for(int i=6;i<=7;i++){
            list1.add("判断题题库 "+(i-5));
        }
        ListAdapter adaper=new ArrayAdapter<String>(getContext(), android.R.layout.simple_list_item_1,list1);
        gridview.setAdapter(adaper);
        gridview.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            public void onItemClick(AdapterView<?> parent, View v,int position, long id) {

                if(loginState.getLogin_state()==0) {
                    Log.i(TAG,"当前登录状态："+loginState.getLogin_state());
                    // 未登录
                    new AlertDialog.Builder(getContext())
                            .setTitle("提示")
                            .setMessage("请先登录")
                            .setPositiveButton("确定", new DialogInterface.OnClickListener() {
                                @Override
                                public void onClick(DialogInterface dialog, int which) {
                                    //已登录
                                    Intent score = new Intent(getContext(), LoginActivity.class);//窗口对象
                                    startActivity(score);

                                }}).setNegativeButton("取消",null).show();
                }
                else if(loginState.getLogin_state()==1){
                    Log.i(TAG,"当前登录状态："+loginState.getLogin_state());
                    //已登录


                    Intent score = new Intent(getContext(), DaTiActivity.class)
                            .putExtra("position",position);//窗口对象
                    Log.i(TAG,"当前点击的id为："+position);
                    startActivity(score);
                }


            }

        });




/*
        dati.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
               if(loginState.getLogin_state()==0) {
                   Log.i(TAG,"当前登录状态："+loginState.getLogin_state());
                   // 未登录
                    new AlertDialog.Builder(getContext())
                            .setTitle("提示")
                            .setMessage("请先登录")
                            .setPositiveButton("确定", new DialogInterface.OnClickListener() {
                                @Override
                                public void onClick(DialogInterface dialog, int which) {
                                    //已登录
                                    Intent score = new Intent(getContext(), LoginActivity.class);//窗口对象
                                    startActivity(score);

                                }}).setNegativeButton("取消",null).show();
                }
                   else if(loginState.getLogin_state()==1){
                   Log.i(TAG,"当前登录状态："+loginState.getLogin_state());
                   //已登录
                   Intent score = new Intent(getContext(), DaTiActivity.class);//窗口对象
                   startActivity(score);
                   }
               }
        });



        */
    }
}